Periodic OHLHere is another experience on working with 'time' variable :)
This script generates potential support and resistance levels based on daily, weekly, and monthly open, high, and low prices. In such indicators, security calls produce effective results. However, similar tasks can also be performed by built-in variables. This script serves as an example of how alternative methods can be constructed.
The originality of the indicator is based on its ability to visualise the current open, high and low prices from the bar at which they occur. You can also display levels simultaneously.
I hope it helps everyone...
DISCLAIMER
This is just an indicator, nothing more. It is provided for informational and educational purposes exclusively. The utilization of this script does not constitute professional or financial advice. The user solely bears the responsibility for risks associated with script usage. Do not forget to manage your risk. And trade as safely as possible. Best of luck!
"support resistance" için komut dosyalarını ara
Intersection Value FunctionsWinning entry for the first Pinefest contest. The challenge required providing three functions returning the intersection value between two series source1 and source2 in the event of a cross, crossunder, and crossover.
Feel free to use the code however you like.
🔶 CHALLENGE FUNCTIONS
🔹 crossValue()
//@function Finds intersection value of 2 lines/values if any cross occurs - First function of challenge -> crossValue(source1, source2)
//@param source1 (float) source value 1
//@param source2 (float) source value 2
//@returns Intersection value
example:
value = crossValue(close, close )
🔹 crossoverValue()
//@function Finds intersection value of 2 lines/values if crossover occurs - Second function of challenge -> crossoverValue(source1, source2)
//@param source1 (float) source value 1
//@param source2 (float) source value 2
//@returns Intersection value
example:
value = crossoverValue(close, close )
🔹 crossunderValue()
//@function Finds intersect of 2 lines/values if crossunder occurs - Third function of challenge -> crossunderValue(source1, source2)
//@param source1 (float) source value 1
//@param source2 (float) source value 2
//@returns Intersection value
example:
value = crossunderValue(close, close )
🔶 DETAILS
A series of values can be displayed as a series of points, where the point location highlights its value, however, it is more common to connect each point with a line to have a continuous aspect.
A line is a geometrical object connecting two points, each having y and x coordinates. A line has a slope controlling its steepness and an intercept indicating where the line crosses an axis. With these elements, we can describe a line as follows:
slope × x + intercept
A cross between two series of values occurs when one series is greater or lower than the other while its previous value isn't.
We are interested in finding the "intersection value", that is the value where two crossing lines are equal. This problem can be approached via linear interpolation.
A simple and direct approach to finding our intersection value is to find the common scaling factor of the slopes of the lines, that is the multiplicative factor that multiplies both lines slopes such that the resulting points are equal.
Given:
A = Point A1 + m1 × scaling_factor
B = Point B1 + m2 × scaling_factor
where scaling_factor is the common scaling factor, and m1 and m2 the slopes:
m1 = Point A2 - Point A1
m2 = Point B2 - Point B1
In our cases, since the horizontal distance between two points is simply 1, our lines slopes are equal to their vertical distance (rise).
Under the event of a cross, there exists a scaling_factor satisfying A = B , which allows us to directly compute our intersection value. The solution is given by:
scaling_factor = (B1 - A1)/(m1 - m2)
As such our intersection value can be given by the following equivalent calculations:
(1) A1 + m1 × (B1 - A1)/(m1 - m2)
(2) B1 + m2 × (B1 - A1)/(m1 - m2)
(3) A2 - m2 × (A2 - B2)/(m1 - m2)
(4) B2 - m2 × (A2 - B2)/(m1 - m2)
The proposed functions use the third calculation.
This approach is equivalent to expressions using the classical line equation, with:
slope1 × x + intercept1 = slope2 × x + intercept2
By solving for x , the intersection point is obtained by evaluating any of the line equations for the obtained x solution.
🔶 APPLICATIONS
The intersection point of two crossing lines might lead to interesting applications and creations, in this section various information/tools derived from the proposed calculations are presented.
This supplementary material is available within the script.
🔹 Intersections As Support/Resistances
The script allows extending the lines of the intersection value when a cross is detected, these extended lines could have applications as support/resistance lines.
🔹 Using The Scaling Factor
The core of the proposed calculation method is the common scaling factor, which can be used to return useful information, such as the position of the cross relative to the x coordinates of a line.
The above image highlights two moving averages (in green and red), the cross-interval areas are highlighted in blue, and the intersection point is highlighted as a blue line.
The pane below shows a bar plot displaying:
1 - scaling factor = 1 -
Values closer to 1 indicate that the cross location is closer to x2 (the right coordinate of the lines), while values closer to 0 indicate that the cross location is closer to x1 .
🔹 Intersection Matrix
The main proposed functions of this challenge focus on the crossings between two series of values, however, we might be interested in applying this over a collection of series.
We can see in the image above how the lines connecting two points intersect with each other, we can construct a matrix populated with the intersection value of two corresponding lines. If (X, Y) represents the intersection value between lines X and Y we have the following matrix:
| Line A | Line B | Line C | Line D |
-------|--------|--------|--------|--------|
Line A | | (A, B) | (A, C) | (A, D) |
Line B | (B, A) | | (B, C) | (B, D) |
Line C | (C, A) | (C, B) | | (C, D) |
Line D | (D, A) | (D, B) | (D, C) | |
We can see that the upper triangular part of this matrix is redundant, which is why the script does not compute it. This function is provided in the script as intersectionMatrix :
//@function Return the N * N intersection matrix from an array of values
//@param array_series (array) array of values, requires an array supporting historical referencing
//@returns (matrix) Intersection matrix showing intersection values between all array entries
In the script, we create an intersection matrix from an array containing the outputs of simple moving averages with a period in a specific user set range and can highlight if a simple moving average of a certain period crosses with another moving average with a different period, as well as the intersection value.
🔹 Magnification Glass
Crosses on a chart can be quite small and might require zooming in significantly to see a detailed picture of them. Using the obtained scaling factor allows reconstructing crossing events with an higher resolution.
A simple supplementary zoomIn function is provided to this effect:
//@function Display an higher resolution representation of intersecting lines
//@param source1 (float) source value 1
//@param source2 (float) source value 2
//@param css1 (color) color of source 1 line
//@param css2 (color) color of source 2 line
//@param intersec_css (color) color of intersection line
//@param area_css (color) color of box area
Users can obtain a higher resolution by modifying the provided "Resolution" setting.
The function returns a higher resolution representation of the most recent crosses between two input series, the intersection value is also provided.
Predictive Channels [LuxAlgo]The Predictive Channels indicator is a real-time estimate of a trend channel. The indicator returns 2 resistances, 2 supports, and an average line.
🔶 USAGE
The Predictive Channels attempt to find a real-time estimate of an underlying linear trend in the price, the returned supports/resistances are constructed from this estimate.
The area between the price and the estimated trend is also highlighted, with a green color when the price is above the estimated trend, indicating a bullish variation relative to the trend, and a red color indicating a bearish variation.
Price deviating significantly from an estimated trend will return new channels. The Factor setting controls the allowed distance between the price and the trend estimate, with higher values allowing for greater distances and less frequent channels.
The Slope setting will affect the steepness of the channels, with lower values returning steeper channels, this can cause the price to more quickly deviate from the estimated trend, increasing the frequency at which new channels are created.
🔶 SETTINGS
Factor: Multiplicative factor, determines the allowed distance between the price and an estimated trend before a new channel is constructed.
Slope: Controls the line steepness of the channels, with lower values returning steeper lines.
Psychological Support/Resistence [BigBeluga]The Psychological Support/Resistance indicator aims to provide the user with hypothetical support and resistance zones that are likely to provoke a strong reaction in price, either in both directions, providing good bouncing zones or significant movements once those levels are breached.
🔶 CALCULATION
The script takes into consideration the total number of sequential candles moving in the same direction, as determined by the user's settings. When this sequence is identified, a level is created.
A level is considered broken when the candle's close is above the top/bottom of the level.
Users have the option to select the width of the area based on the Average (AVG), Open, or Close.
AVG will provide the average width of the level of the area.
Close will offer a broader range to work with.
Open will provide a very narrow area.
🔶 METHODOLOGY
The idea behind these areas is that the price will be more likely to produce either a substantial move in the ongoing direction or, when breached, a strong price reaction.
The more the support level is touched or tested, the more likely it is to break.
The longer it has been since its creation and the less it has been tested, the more likely it is to offer strong support or resistance.
Wicks starting to close above the level will indicate a potential breakout to the upside or downside if a candle manages to close above it.
🔶 INPUTS
Users have the option to determine the number of sequential candles.
Users also have the option to decide how many zones to display on the chart.
Color changes are possible.
The possibility to show volume on the creation of the zone is included."
Buyside & Sellside Liquidity [LuxAlgo]The Buyside & Sellside Liquidity indicator aims to detect & highlight the first and arguably most important concept within the ICT trading methodology, Liquidity levels.
🔶 SETTINGS
🔹 Liquidity Levels
Detection Length: Lookback period
Margin: Sets margin/sensitivity for a liquidity level detection
🔹 Liquidity Zones
Buyside Liquidity Zones: Enables display of the buyside liquidity zones.
Margin: Sets margin/sensitivity for the liquidity zone boundaries.
Color: Color option for buyside liquidity levels & zones.
Sellside Liquidity Zones: Enables display of the sellside liquidity zones.
Margin: Sets margin/sensitivity for the liquidity zone boundaries.
Color: Color option for sellside liquidity levels & zones.
🔹 Liquidity Voids
Liquidity Voids: Enables display of both bullish and bearish liquidity voids.
Label: Enables display of a label indicating liquidity voids.
🔹 Display Options
Mode: Controls the lookback length of detection and visualization, where Present assumes last 500 bars and Historical assumes all data available to the user
# Visible Levels: Controls the amount of the liquidity levels/zones to be visualized.
🔶 USAGE
Definitions of Liquidity refer to the availability of orders at specific price levels in the market, allowing transactions to occur smoothly.
In the context of Inner Circle Trader's teachings, liquidity mainly relates to stop losses or pending orders and liquidity level/pool, highlighting a concentration of buy or sell orders at specific price levels. Smart money traders, such as banks and other large institutions, often target these liquidity levels/pools to accumulate or distribute their positions.
There are two types of liquidity; Buyside liquidity and Sellside liquidity .
Buyside liquidity represents a level on the chart where short sellers will have their stops positioned, and Sellside liquidity represents a level on the chart where long-biased traders will place their stops.
These areas often act as support or resistance levels and can provide trading opportunities.
When the liquidity levels are breached at which many stop/limit orders are placed have been traded through, the script will create a zone aiming to provide additional insight to figure out the odds of the next price action.
Reversal: It’s common that the price may reverse course and head in the opposite direction, seeking liquidity at the opposite extreme.
Continuation: When the zone is also broken it is a sign for continuation price action.
It's worth noting that ICT concepts are specific to the methodology developed by Michael J. Huddleston and may not align with other trading approaches or strategies.
🔶 DETAILS
Liquidity voids are sudden changes in price when the price jumps from one level to another. Liquidity voids will appear as a single or a group of candles that are all positioned in the same direction. These candles typically have large real bodies and very short wicks, suggesting very little disagreement between buyers and sellers. The peculiar thing about liquidity voids is that they almost always fill up.
🔶 ALERTS
When an alert is configured, the user will have the ability to be notified in case;
Liquidity level is detected/updated.
Liquidity level is breached.
🔶 RELATED SCRIPTS
ICT-Concepts
ICT-Macros
Imbalance-Detector
Bar Move Probability (BMP)Hello fellow traders! I am excited to share with you my latest creation, the Bar Move Probability (BMP) indicator. This powerful tool is designed to give you a statistical edge in your trading by helping you understand the likelihood of price movements based on historical data. In this blog post, I'll give you an overview of the indicator, its features, and how it can help you make more informed trading decisions. Let's dive in!
What is the Bar Move Probability Indicator?
The Bar Move Probability (BMP) indicator is a unique tool that calculates the probability of a bar's price movement, either up or down, based on past occurrences of similar price movements. This can give you valuable insights into the potential direction of the market, allowing you to make better-informed trading decisions.
One of the key features of the BMP indicator is that it allows you to choose the price you want to determine the probability of. By inputting your desired price, the indicator will analyze historical data and provide you with the likelihood of reaching that price, offering a more personalized approach to trading.
How Does the BMP Indicator Work?
The BMP indicator calculates the probability of a bar's price movement by comparing the current price change (in percentage) to historical price changes. It does this by maintaining separate arrays for green (bullish) and red (bearish) price movements, as well as corresponding arrays for the count of each movement.
Whenever a new bar is formed, the indicator checks whether the price movement (in percentage) is already present in the respective array. If it is, the corresponding count is updated. Otherwise, a new entry is added to the array, with an initial count of 1.
After analyzing the historical data, the BMP indicator calculates the probability of each price movement by dividing the count of each movement by the sum of all counts. These probabilities are then stored in separate arrays for green and red movements.
Finally, the indicator displays the probability of the current price movement as a label on the chart. The label is color-coded, with green indicating a bullish price movement and red indicating a bearish price movement.
How Can the BMP Indicator Benefit Your Trading?
The primary benefit of the BMP indicator is its ability to provide you with a statistical edge in your trading. By analyzing historical price data, the indicator helps you understand the likelihood of a certain price movement occurring, allowing you to make more informed decisions about your trades.
The customizable nature of the BMP indicator, allowing you to input your desired price, makes it a valuable tool for traders with specific price targets in mind. By understanding the probability of reaching your target price, you can better manage your risk and optimize your trading strategy.
For example, suppose the BMP indicator shows a high probability of a bullish price movement towards your target price. In that case, you may consider entering a long position or tightening your stop loss on an existing short position. Conversely, if the indicator displays a high probability of a bearish price movement away from your target price, you may consider entering a short position or taking profit on an existing long position.
The BMP indicator can be used in conjunction with other technical analysis tools and indicators to further strengthen your trading strategy. For example, you can combine the BMP indicator with support and resistance levels, trend lines, and moving averages to better time your entries and exits.
Wrapping Up
In conclusion, the Bar Move Probability (BMP) indicator is a powerful and customizable tool that can help you gain a statistical edge in your trading. By analyzing historical price data and allowing you to input your desired price, the indicator provides valuable insights into the likelihood of price movements, enabling you to make better-informed trading decisions.
I hope you find the BMP indicator useful
RSI + MA, LinReg, ZZ (HH HL LH LL), Div, Ichi, MACD and TSI HistRelative Strength Index with Moving Average, Linear Regression, Zig Zag (Highs and Lows), Divergence, Ichimoku Cloud, Moving Average Convergence Divergence and True Strength Index Histogram
This script is based on zdmre's RSI script, I revamped a lot of things and added a few indicators from ParkF's RSI script.
Disable Labels in the Style tab and the histogram if you don't enlarge the indicator and it seems too small.
Look to buy in the oversold area and bounce of the support of the linear regression.
Look to sell in the overbought area and bounce of the resistance of the linear regression.
Look for retracement to the moving average or horizontal lines, and divergences for potential reversal.
RSI
The Relative Strength Index (RSI) is a well versed momentum based oscillator which is used to measure the speed (velocity) as well as the change (magnitude) of directional price movements.
Moving Average
Moving Average (MA) is a good way to gauge momentum as well as to confirm trends, and define areas of support and resistance.
Linear Regression
The Linear Regression indicator visualizes the general price trend of a specific part of the chart based on the Linear Regression calculation.
Zig Zag (Highs and Lows)
The Zig Zag indicator is used to identify price trends, and in doing so plots points on the chart to mark whenever prices reverse by a larger percentage point than a predetermined variable or marker.
Divergence
The divergence indicator warns traders and technical analysts of changes in a price trend, oftentimes that it is weakening or changing direction.
Ichimoku Cloud
The Ichimoku Cloud is a package of multiple technical indicators that signal support, resistance, market trend, and market momentum.
MACD and TSI Histogram
MACD can be used to identify aspects of a security's overall trend.
The True Strength Index indicator is a momentum oscillator designed to detect, confirm or visualize the strength of a trend.
Gann Square of 144This indicator will create lines on the chart based on W.D. Gann's Square of 144. All the inputs will be detailed below
Why create this indicator?
I didn't find it on Tradingview (at least with open source). But the main reason is to study the strategy and be able to draw it fast. Manually drawing the square is not hard, but moving all together to the right spots and scale was time-consuming.
It has a lot of inputs...
Yes, each square point divisible by 6 has information with some options, so the user can create any configuration he wants. Also, it has the advantage of having the square built in seconds and adjusting itself on each new calculation.
About the inputs
Starting Date
This input will be used when the "Set Upper/Lower Prices and Start Bar Automatically" checkbox is not selected. The indicator will calculate all the line locations on the chart using the selected start date. When selecting this input, change the Manual Max and Min Prices to the better calculation
Manual Max/Min Price
This input will be used when the "Set Upper/Lower Prices and Start Bar Automatically" checkbox is not selected. The indicator will calculate all the line's locations on the chart using these prices
Set Upper/Lower Prices and Start Bar Automatically
Selects if the starting date will be automatically selected by the system or based on the input data. When it's set, the indicator will use the most recent bar as the middle point of the square, using the higher price as the Upper Price and the lowest price as the Lower Price in the latest 72 bars (or more based on the Candles Per Division parameter)
Update at a new bar
When this option is market, the indicator will update all created lines to match the new bar position, together with all the possible new Upper/Lower prices. Let it unchecked to watch the progression of the price while the square remains fixed in the chart.
Top X-Axis
When checked, it will display the labels on the Top of the square
Bottom X-Axis
When checked, it will display the labels on the Bottom of the square
Left X-Axis
When checked, it will display the labels on the left of the square
Right X-Axis
When checked, it will display the labels on the right of the square
Show Prices on the Right Y-Axis
When checked, it will display the prices together with the labels on the right of the square
Show Vertical Divisions
Show the lines that will divide the square into 9 equal parts
Show Extra Lines
Show unique lines that will come from the Top and bottom middle of the square, connecting the center to the 36 and 108 levels
Show Grid
When selected, it will display a grid in the square
Line Patterns
A selector with some options of built-in lines configuration. When any option besides None is selected, it will override the lines inputs below
Numbers Color
Select the color of each number on the Axis
Vertical Lines Color
Select the color of the vertical lines
Grid Color
Select the grid line color
Connections from corners to N
Each corner is represented by 2 characters, so they all fit in a single line
It will indicate where the line starts and where it ends
┏ ↓ = Top Left to Bottom
┏ → = Top Left to Right
┗ ↑ = Bottom Left to Top
┗ → = Bottom Left to Right
┓ ← = Top Right to Left
┓ ↓ = Top Right to Bottom
┛ ← = Bottom Right to Left
┛ ↑ = Bottom Right to Top
Besides selecting what line will be created, it's possible to select the color, the style, and the extension
How to use this indicator
When you dig into Gann's books for more information about the square of 144, you find that it was part of his setup with multiple indicators (technical and fundamental, and astrological). It is not a "one indicator" setup, so it's hard to say that you will find entries, exits, stop loss, and take profit in this. Still, it will help see trendiness, support, and resistance levels.
Mixing this with other indicators is probably a good idea, but some may find this indicator the only one needed.
Some aspects of the square
The end of the square is important, so where it starts is crucial. The end is important because it is where the price and time expire. The other parts of the square are defined based on their start and end, so placing them right is essential.
So, where to set the start of the square?
The last major low is the most indicated. The minimum price will be the lowest, and the max price will be the last major Top. Note that the indicator uses 1 candle on each point.
After finding the start, the minimum, and the maximum prices for the square, it will draw all lines. Another essential part of the square is The Midpoint.
The midpoint is the most crucial part of the square and is the best way to see if you positioned the square correctly. When the price is inside the square, using the starting candle as the start, a second higher low or a lower high occurs in that spot. When using the Vertical lines in the indicator, it's the middle square inside Gann's square.
The other divisions will be opposing each other most of the time. So if the price is rising in the 1/3 of the square, it's common to see the price fall in the 3/3 of the square.
More information about these aspects here
Considerations
This indicator was meant for price targets and a time calculator for possible support/resistances in the chart. It was created by William Delbert Gann and was part of his setup for trading almost a century ago. The lines will form geometric figures, which Gann used with high accuracy to predict tops/bottoms and when they would occur.
Volume Profile and Volume Indicator by DGTVolume Profile (also known as Price by Volume) is an charting study that displays trading activity over a specified time period at specific price levels. It is plotted as a horizontal histogram on the finacial isntrumnet's chart that highlights the trader's interest at specific price levels.
The histogram is used by traders to predict areas of support and resistance. Price levels where the traded volume is high could be assumed as support and resistance levels.
Price may experience difficulty moving above or below areas with large bars. Usually there is a great deal of activity on both the buy and sell side and the market stays at that price level for a great deal of time
It is advised to use volume profile in conjunction with other forms of technical analysis to maximize the odds of success
Light version of Volume Profile is added to Price Action - Support & Resistance by DGT
EMA Levels, Multi-TimeframeThe exponential moving average (EMA) tracks price over time, giving more importance to recent price data than simple moving average (SMA). EMAs for larger timeframes are generally considered to be stronger supports/resistances for price to move through than smaller timeframes. This indicator allows you to specify two different EMA lengths that you want to track. Additionally, this indicator allows you to display not just the EMA levels of your currently viewed timeframe on the chart, but also shows the EMA levels of up to 4 different timeframes on the same chart. This allows you to quickly see if multiple EMA levels are aligning across different timeframes, which is an even stronger indication that price is going to meet support or resistance when it meets those levels on the chart. There are a lot of nice configuration options, like:
Ability to customize the EMA lengths you want to track
Style customization (color, thickness, size)
Hide any timeframes/levels you aren't interested in
Labels on the chart so you can tell which plots are the EMA levels
Optionally display the plot as a horizontal line if all you care about is the EMA level right now
Liquidity Levels [LuxAlgo]The Peak Activity Levels indicator displays support and resistance levels from prices accompanied by significant volume. The indicator includes a histogram returning the frequency of closing prices falling between two parallel levels, each bin shows the number of bullish candles within the levels.
1. Settings
Length: Lookback for the detection of volume peaks.
Number Of Levels: Determines the number of levels to display.
Levels Color Mode: Determines how the levels should be colored. "Relative" will color the levels based on their location relative to the current price. "Random" will apply a random color to each level. "Fixed" will use a single color for each level.
Levels Style: Style of the displayed levels. Styles include solid, dashed, and dotted.
1.1 Histogram
Show Histogram: Determines whether to display the histogram or not.
Histogram Window: Lookback period of the histogram calculation.
Bins Colors: Control the color of the histogram bins.
2. Usage
The indicator can be used to display ready-to-use support and resistance. These are constructed from peaks in volume. When a peak occurs, we take the price where this peak occurred and use it as the value for our level.
If one of the levels was previously tested, we can hypothesize that the level might be used as support/resistance in the future. Additional analysis using volume can be done in order to confirm a potential bounce.
The histogram can return various information to the user. It can show if the price stayed within two levels for a long time and if the price within two levels was mostly made of bullish or bearish candles.
In the chart above, we can see that over the most recent 200 bars (determined by Histogram Window) 68 closing prices fall between levels A and B, with 27 bars being bullish.
Additionally, the width of a bin and its length can sometimes give information about the volatility of a specific price variation. If a bin is very wide but short (a low number of closing prices fallen within the levels) then we can conclude a most of the movement was done on a short amount of time.
Auto Phivots S/R [DM]Greetings colleagues
Today I share the classic pivot points indicator
Added options:
Standard levels
Fibonacci levels "up to 261'8"
Logarithmic scale option
//Pivot Points Standard
//Pivot Points Standard — is a technical indicator that is used to determine the levels
//at which price may face support or resistance. The Pivot Points indicator consists of
//a pivot point (PP) level and several support (S) and resistance (R) levels.
//
//Calculation
//PP, resistance and support values are calculated in different ways, depending on
//the type of the indicator, specified by the Type field in indicator inputs. To
//calculate PP and support/resistance levels, the values OPENcurr, OPENprev, HIGHprev,
//LOWprev, CLOSEprev are used, which are the values of the current open and previous
//open, high, low and close, respectively, on the indicator resolution. The indicator
//resolution is set by the input of the Pivots Timeframe. If the Pivots Timeframe is set
//to AUTO (the default value), then the increased resolution is determined by the
//following algorithm:
//
//for intraday resolutions up to and including 15 min, DAY (1D) is used
//for intraday resolutions more than 15 min, WEEK (1W) is used
//for daily resolutions MONTH is used (1M)
//for weekly and monthly resolutions, 12-MONTH (12M) is used
MTF Key Levels - Support and ResistanceThis indicator shows how to Multi Time Frame (MTF) interpret levels:
Watch how price acts around these levels and how they can act as support/resistance and can be used as great confluence levels for your technical analysis.
This indicator displays:
VWAP Levels
Daily / Weekly / Monthly / Yearly
Within the chart above I have marked out how displaying these VWAP levels can provide support and resistance levels to be aware of.
Daily – Weekly - Monthly – Yearly Levels
O = Open / H = High / L = Low
pO = Previous Open / pH = Previous High / pL = Previous Low / pEQ = Previous Equlibrium
Having previous Low/High levels makes you aware of Swing Failure Patterns (SFP). Also the daily/weekly/monthly opening and previous opening can assist with the trend.
Daily Open: Gives you an idea who is in control for the day. This level very often acts as strong support or resistance.
Weekly Open: Indicates where the price is within the higher timeframe.
Monthly Open & Yearly Levels: Overview of direction for the whole month without looking at a monthly chart and Yearly chart
Line Options
Within the line options you can choose to have a clean chart and display a “short line”. These line length can be adjusted by the user.
Line just to the right.
Line across the screen.
Disclaimer: The Monthly and Yealy VWAP will only show on higher timeframes this is due to restriction of how many candles can be shown on the chart. The candles displayed need to go back to either the start of the month of year to be able to calculate their VWAPs.
SMA 200 Ribbon MTF - Support and ResistanceThe SMA 200 is one of the most important and strongest support/resistance lines on any timeframe. This script pulls the SMA 200 line from multiple timeframes so traders can visually see price action bounce between support and resistance . The current timeframes SMA 200 is displayed in white and turns yellow to signify "pressure". Can be used on higher timeframes to find bull action. This indicator can also be used to filter out pumps and dumps as shown in example 3 and 4.
Example of indicator on 5 min timeframe. Candles bounce along SMA200 lines.
Example of indicator on daily timeframe . Lines turn green and price action pumps. Lines turn red and price action dumps.
Example 3: A clean crossover of lines usually signals a bullish pump.
Example 4: Tangled or messy lines tend to result in a dump as price action struggles to cross resistance. A pullback is required to "clean" the lines.
EMA Band can be turned on using "tickbox" in settings menu.
[fikira] Bollinger Bands + Higher Time FramesHere is my take on BB and MTF, based on the most excellent work of
"PineCoders" (MTF Selection Framework functions)!
The big advantage is that on 1 image you can easily see where
price is compared to 5 or less BB Bands (each of different Time Frames).
This gives a lot of Support and Resistance area's!
Includes:
- 1 Bollinger Bands (can be enabled/disabled - "Bollinger Bands"
- 4 Bollinger Bands (each can be enabled/disabled - "HTF Selection 1-4")
Each BB has its colour (can be changed)
- Labels (Timeframe and price) can be enabled/disabled
- Labels position and size can be changed
...
5 MAs w. alerts [LucF]Is this gazillionth MA indicator worth an addition to the already crowded field of contenders? I say yes! This one shows up to 5 MAs and 6 different marker conditions that can be used to create alerts, among many other goodies.
Features
MAs can be darkened when they are falling.
MAs from another time frame can be displayed, with the option of smoothing them.
Markers can be filtered to Longs or Shorts only.
EMAs can be selected for either all or the two shortest MAs.
The background can be colored using any of the marker states except no. 3.
Markers are:
1. On crosses between any two user-defined MAs,
2. When price is above or below an MA,
3. On Quick Flips (a specific setup involving a cross, multiple MA states and increasing volume, when available),
4. When the difference between two MAs is within a % of its high/low historic values,
5. When an MA has been rising/falling for n bars,
6. When the difference between two MAs is greater than a multiple of ATR.
Some markers use similar visual cues, so distinguishing them will be a challenge if they are used concurrently.
Alerts
Alerts can be created on any combination of alerts. Only non-consecutive instances of markers 5 and 6 will trigger the alert condition. Make sure you are on the interval you want the alert to run at. Using the “Once Per Bar Close” trigger condition is usually the best option.
When an alert is created in TradingView, a snapshot of the indicator’s settings is saved with the alert, which then takes on a life of its own. That is why even though there is only one alert to choose from when you bring up the alert creation dialog box and choose “5 MAs”, that alert can be triggered from any number of conditions. You select those conditions by activating the markers you want the alert to trigger on before creating the alert. If you have selected multiple conditions, then it can be a good idea to record a reminder in the alert’s message field. When the alert triggers, you will need the indicator on the chart to figure out which one of your conditions triggered the alert, as there is currently no way to dynamically change the alert’s message field from within the script.
Background settings will not trigger alerts; only marker configurations.
Notes
MAs are just… averages. Trader lure would have them act as support and resistance levels. I’m not sure about that, and not the only one thinking along these lines. Adam Grimes has studied moving averages in quite a bit of detail. His numbers point to no evidence indicating they act as support/resistance, and to specific MA lengths not being more meaningful than others. His point of view is debated by some—not by me. Mean reversion does not entail that price stops when it reaches its MA; rather, it makes sense to me that price would often more or less oscillate around its MA, which entails the MA does not act as support/resistance. Aren’t the best mean reversion opportunities when price is furthest away from its MA? If so, it should be more profitable to identify these areas, which some of this indicator’s markers try to do.
I think MAs can be much more powerful when thought of as instruments we can use to situate price events in contexts of various resolutions, from the instantaneous to the big picture. Accordingly, I use the relative positions and slopes of MAs in both discretionary and automated trading; but never their purported ability to support/resist.
Regardless of how you use MAs, I hope you will find this indicator useful.
Biased References
The Art and Science of Technical Analysis: Market Structure, Price Action, and Trading Strategies, Adam Grimes, 2012.
Does the 200 day moving average “work”?
Moving averages: digging deeper
MIDAS VWAP Jayy his is just a bash together of two MIDAS VWAP scripts particularly AkifTokuz and drshoe.
I added the ability to show more MIDAS curves from the same script.
The algorithm primarily uses the "n" number but the date can be used for the 8th VWAP
I have not converted the script to version 3.
To find bar number go into "Chart Properties" select " "background" then select Indicator Titles and "Indicator values". When you place your cursor over a bar the first number you see adjacent to the script title is the bar number. Put that in the dialogue box midline is MIDAS VWAP . The resistance is a MIDAS VWAP using bar highs. The resistance is MIDAS VWAP using bar lows.
In most case using N will suffice. However, if you are flipping around charts inputting a specific date can be handy. In this way, you can compare the same point in time across multiple instruments eg first trading day of the year or an election date.
Adding dates into the dialogue box is a bit cumbersome so in this version, it is enabled for only one curve. I have called it VWAP and it follows the typical VWAP algorithm. (Does that make a difference? Read below re my opinion on the Difference between MIDAS VWAP and VWAP ).
I have added the ability to start from the bottom or top of the initiating bar.
In theory in a probable uptrend pick a low of a bar for a low pivot and start the MIDAS VWAP there using the support.
For a downtrend use the high pivot bar and select resistance. The way to see is to play with these values.
Difference between MIDAS VWAP and the regular VWAP
MIDAS itself as described by Levine uses a time anchored On-Balance Volume (OBV) plotted on a graph where the horizontal (abscissa) arm of the graph is cumulative volume not time. He called his VWAP curves Support/Resistance VWAP or S/R curves. These S/R curves are often referred to as "MIDAS curves".
These are the main components of the MIDAS chart. A third algorithm called the Top-Bottom Finder was also described. (Separate script).
Additional tools have been described in "MIDAS_Technical_Analysis"
Midas Technical Analysis: A VWAP Approach to Trading and Investing in Today’s Markets by Andrew Coles, David G. Hawkins
Copyright © 2011 by Andrew Coles and David G. Hawkins.
Denoting the different way in which Levine approached the calculation.
The difference between "MIDAS" VWAP and VWAP is, in my opinion, much ado about nothing. The algorithms generate identical curves albeit the MIDAS algorithm launches the curve one bar later than the VWAP algorithm which can be a pain in the neck. All of the algorithms that I looked at on Tradingview step back one bar in time to initiate the MIDAS curve. As such the plotted curves are identical to traditional VWAP assuming the initiation is from the candle/bar midpoint.
How did Levine intend the curves to be drawn?
On a reversal, he suggested the initiation of the Support and Resistance VVWAP (S/R curve) to be started after a reversal.
It is clear in his examples this happens occasionally but in many cases he initiates the so-called MIDAS S/R VWAP right at the reversal point. In any case, the algorithm is problematic if you wish to start a curve on the first bar of an IPO .
You will get nothing. That is a pain. Also in Levine's writings, he describes simply clicking on the point where a
S/R VWAP is to be drawn from. As such, the generally accepted method of initiating the curve at N-1 is a practical and sensible method. The only issue is that you cannot draw the curve from the first bar on any security, as mentioned without resorting to the typical VWAP algorithm. There is another difference. VWAP is launched from the middle of the bar (as per AlphaTrends), You can also launch from the top of the bar or the bottom (or anywhere for that matter). The calculation proceeds using the top or bottom for each new bar.
The potential applications are discussed in the MIDAS Technical Analysis book.
Adaptive Jump Moving AverageAdaptive Jump Moving Average - Description
This indicator solves the classic moving average lag problem during significant price moves. Traditional MAs (like the 200-day) take forever to catch up after a major drop or rally because they average across all historical periods equally.
How it works:
Tracks price smoothly during normal market conditions
When price moves 20%+ away from the MA, it immediately "resets" to the current price level
Treats that new level as the baseline and continues smooth tracking from there
Advantages over normal MA:
No lag on major moves: A 40% crash doesn't get diluted over 200 days - the MA instantly adapts
Reduces false signals: You won't get late "death cross" signals months after a crash already happened
Better support/resistance: The MA stays relevant to current price action instead of reflecting outdated levels
Keeps the smoothness: During normal volatility, it behaves like a traditional MA without the noise of shorter periods
20/40/60Displays three consecutive, connected range boxes showing high/low price ranges for customizable periods. Boxes are positioned seamlessly with shared boundaries for continuous price action visualization.
Features
Three Connected Boxes: Red (most recent), Orange (middle), Green (earliest) periods
Customizable Positioning: Set range length and starting offset from current bar
Individual Styling: Custom colors, transparency, and border width for each box
Display Controls: Toggle borders, fills, and line visibility
Use Cases
Range Analysis: Compare volatility across time periods, spot breakouts
Support/Resistance: Use box boundaries as potential S/R levels
Market Structure: Visualize recent price development and trend patterns
Key Settings
Range Length: Bars per box (default: 20)
Starting Offset: Bars back from current to position boxes (default: 0)
Style Options: Colors, borders, and visibility controls for each box
Perfect for traders analyzing consecutive price ranges and comparing current conditions to recent historical periods.
ZigZag Volume Profile [ChartPrime]⯁ OVERVIEW
ZigZag Volume Profile combines swing structure with volume analytics by plotting a ZigZag of major price swings and overlaying a detailed volume profile around each swing. At the end of each swing, it highlights the Point of Control (POC) — the price level with the highest traded volume — and extends it forward to identify key areas of potential support or resistance.
⯁ KEY FEATURES
ZigZag Swing Detection:
Automatically detects swing highs and lows based on a user-defined length, creating clean visual segments of market structure.
These segments act as boundaries for volume profile calculations.
swingHigh = ta.highest(swingLength)
swingLow = ta.lowest(swingLength)
ZigZag Channel Visualization:
The ZigZag structure is connected with sloped lines, forming a visual “channel” of the price movement.
The ZigZag can optionally, scaled by ATR.
Volume Profile Around Each Swing:
For every completed swing (high to low or low to high), the indicator constructs a full volume profile using user-defined bin counts.
It scans volume across price levels in the swing and plots histogram-style bins using a gradient color to indicate volume magnitude.
Dynamic Bin Width and Slope Adjustment:
Bins are distributed across a vertical ATR-based range, and their width is adjusted based on the percentage of total swing volume.
The volume fill direction is adapted to the swing’s slope for visually aligned plotting.
POC Detection and Extension:
The highest volume bin in each swing is identified as the Point of Control (POC).
This level is plotted with a thicker line and extended horizontally into the future as a key reaction level.
Automatic POC Expiry on Price Interaction:
POC lines are continuously extended unless breached by price.
When price crosses the POC level, the extension is terminated — signaling that the level may have been absorbed.
Clean Volume Bin Visualization:
Bin colors range from green (low volume) to blue (higher volume), with the POC always marked in red by default for easy identification.
Volume percentages are optionally labeled at each bin level.
Flexible Swing Profile Parameters:
Users can control:
Number of volume bins
Bin width
Channel width (ATR factor)
Visibility of the swing channel or POC lines
Efficient Memory Handling:
Old POC lines and volume profiles are automatically removed from memory after a threshold to keep charts clean and performant.
⯁ USAGE
Use ZigZag swings to define market structure visually.
Analyze volume profile around each swing to understand where most trading activity occurred.
Use POC extensions as dynamic support/resistance zones for entries, stops, or take-profits.
Watch for price interaction with extended POC lines — breaks may suggest absorbed liquidity or breakout potential.
Use the ATR-based channel width to adapt profiles based on market volatility.
⯁ CONCLUSION
ZigZag Volume Profile offers a powerful fusion of structure and volume. By plotting detailed volume profiles over each price swing and extending the POC as actionable S/R levels, this tool provides deep insight into market participation zones — giving traders a tactical edge in both ranging and trending environments.
Wavelet-Trend ML Integration [Alpha Extract]Alpha-Extract Volatility Quality Indicator
The Alpha-Extract Volatility Quality (AVQ) Indicator provides traders with deep insights into market volatility by measuring the directional strength of price movements. This sophisticated momentum-based tool helps identify overbought and oversold conditions, offering actionable buy and sell signals based on volatility trends and standard deviation bands.
🔶 CALCULATION
The indicator processes volatility quality data through a series of analytical steps:
Bar Range Calculation: Measures true range (TR) to capture price volatility.
Directional Weighting: Applies directional bias (positive for bullish candles, negative for bearish) to the true range.
VQI Computation: Uses an exponential moving average (EMA) of weighted volatility to derive the Volatility Quality Index (VQI).
Smoothing: Applies an additional EMA to smooth the VQI for clearer signals.
Normalization: Optionally normalizes VQI to a -100/+100 scale based on historical highs and lows.
Standard Deviation Bands: Calculates three upper and lower bands using standard deviation multipliers for volatility thresholds.
Signal Generation: Produces overbought/oversold signals when VQI reaches extreme levels (±200 in normalized mode).
Formula:
Bar Range = True Range (TR)
Weighted Volatility = Bar Range × (Close > Open ? 1 : Close < Open ? -1 : 0)
VQI Raw = EMA(Weighted Volatility, VQI Length)
VQI Smoothed = EMA(VQI Raw, Smoothing Length)
VQI Normalized = ((VQI Smoothed - Lowest VQI) / (Highest VQI - Lowest VQI) - 0.5) × 200
Upper Band N = VQI Smoothed + (StdDev(VQI Smoothed, VQI Length) × Multiplier N)
Lower Band N = VQI Smoothed - (StdDev(VQI Smoothed, VQI Length) × Multiplier N)
🔶 DETAILS
Visual Features:
VQI Plot: Displays VQI as a line or histogram (lime for positive, red for negative).
Standard Deviation Bands: Plots three upper and lower bands (teal for upper, grayscale for lower) to indicate volatility thresholds.
Reference Levels: Horizontal lines at 0 (neutral), +100, and -100 (in normalized mode) for context.
Zone Highlighting: Overbought (⋎ above bars) and oversold (⋏ below bars) signals for extreme VQI levels (±200 in normalized mode).
Candle Coloring: Optional candle overlay colored by VQI direction (lime for positive, red for negative).
Interpretation:
VQI ≥ 200 (Normalized): Overbought condition, strong sell signal.
VQI 100–200: High volatility, potential selling opportunity.
VQI 0–100: Neutral bullish momentum.
VQI 0 to -100: Neutral bearish momentum.
VQI -100 to -200: High volatility, strong bearish momentum.
VQI ≤ -200 (Normalized): Oversold condition, strong buy signal.
🔶 EXAMPLES
Overbought Signal Detection: When VQI exceeds 200 (normalized), the indicator flags potential market tops with a red ⋎ symbol.
Example: During strong uptrends, VQI reaching 200 has historically preceded corrections, allowing traders to secure profits.
Oversold Signal Detection: When VQI falls below -200 (normalized), a lime ⋏ symbol highlights potential buying opportunities.
Example: In bearish markets, VQI dropping below -200 has marked reversal points for profitable long entries.
Volatility Trend Tracking: The VQI plot and bands help traders visualize shifts in market momentum.
Example: A rising VQI crossing above zero with widening bands indicates strengthening bullish momentum, guiding traders to hold or enter long positions.
Dynamic Support/Resistance: Standard deviation bands act as dynamic volatility thresholds during price movements.
Example: Price reversals often occur near the third standard deviation bands, providing reliable entry/exit points during volatile periods.
🔶 SETTINGS
Customization Options:
VQI Length: Adjust the EMA period for VQI calculation (default: 14, range: 1–50).
Smoothing Length: Set the EMA period for smoothing (default: 5, range: 1–50).
Standard Deviation Multipliers: Customize multipliers for bands (defaults: 1.0, 2.0, 3.0).
Normalization: Toggle normalization to -100/+100 scale and adjust lookback period (default: 200, min: 50).
Display Style: Switch between line or histogram plot for VQI.
Candle Overlay: Enable/disable VQI-colored candles (lime for positive, red for negative).
The Alpha-Extract Volatility Quality Indicator empowers traders with a robust tool to navigate market volatility. By combining directional price range analysis with smoothed volatility metrics, it identifies overbought and oversold conditions, offering clear buy and sell signals. The customizable standard deviation bands and optional normalization provide precise context for market conditions, enabling traders to make informed decisions across various market cycles.
Volatility Quality [Alpha Extract]The Alpha-Extract Volatility Quality (AVQ) Indicator provides traders with deep insights into market volatility by measuring the directional strength of price movements. This sophisticated momentum-based tool helps identify overbought and oversold conditions, offering actionable buy and sell signals based on volatility trends and standard deviation bands.
🔶 CALCULATION
The indicator processes volatility quality data through a series of analytical steps:
Bar Range Calculation: Measures true range (TR) to capture price volatility.
Directional Weighting: Applies directional bias (positive for bullish candles, negative for bearish) to the true range.
VQI Computation: Uses an exponential moving average (EMA) of weighted volatility to derive the Volatility Quality Index (VQI).
vqiRaw = ta.ema(weightedVol, vqiLen)
Smoothing: Applies an additional EMA to smooth the VQI for clearer signals.
Normalization: Optionally normalizes VQI to a -100/+100 scale based on historical highs and lows.
Standard Deviation Bands: Calculates three upper and lower bands using standard deviation multipliers for volatility thresholds.
vqiStdev = ta.stdev(vqiSmoothed, vqiLen)
upperBand1 = vqiSmoothed + (vqiStdev * stdevMultiplier1)
upperBand2 = vqiSmoothed + (vqiStdev * stdevMultiplier2)
upperBand3 = vqiSmoothed + (vqiStdev * stdevMultiplier3)
lowerBand1 = vqiSmoothed - (vqiStdev * stdevMultiplier1)
lowerBand2 = vqiSmoothed - (vqiStdev * stdevMultiplier2)
lowerBand3 = vqiSmoothed - (vqiStdev * stdevMultiplier3)
Signal Generation: Produces overbought/oversold signals when VQI reaches extreme levels (±200 in normalized mode).
Formula:
Bar Range = True Range (TR)
Weighted Volatility = Bar Range × (Close > Open ? 1 : Close < Open ? -1 : 0)
VQI Raw = EMA(Weighted Volatility, VQI Length)
VQI Smoothed = EMA(VQI Raw, Smoothing Length)
VQI Normalized = ((VQI Smoothed - Lowest VQI) / (Highest VQI - Lowest VQI) - 0.5) × 200
Upper Band N = VQI Smoothed + (StdDev(VQI Smoothed, VQI Length) × Multiplier N)
Lower Band N = VQI Smoothed - (StdDev(VQI Smoothed, VQI Length) × Multiplier N)
🔶 DETAILS
Visual Features:
VQI Plot: Displays VQI as a line or histogram (lime for positive, red for negative).
Standard Deviation Bands: Plots three upper and lower bands (teal for upper, grayscale for lower) to indicate volatility thresholds.
Reference Levels: Horizontal lines at 0 (neutral), +100, and -100 (in normalized mode) for context.
Zone Highlighting: Overbought (⋎ above bars) and oversold (⋏ below bars) signals for extreme VQI levels (±200 in normalized mode).
Candle Coloring: Optional candle overlay colored by VQI direction (lime for positive, red for negative).
Interpretation:
VQI ≥ 200 (Normalized): Overbought condition, strong sell signal.
VQI 100–200: High volatility, potential selling opportunity.
VQI 0–100: Neutral bullish momentum.
VQI 0 to -100: Neutral bearish momentum.
VQI -100 to -200: High volatility, strong bearish momentum.
VQI ≤ -200 (Normalized): Oversold condition, strong buy signal.
🔶 EXAMPLES
Overbought Signal Detection: When VQI exceeds 200 (normalized), the indicator flags potential market tops with a red ⋎ symbol.
Example: During strong uptrends, VQI reaching 200 has historically preceded corrections, allowing traders to secure profits.
Oversold Signal Detection: When VQI falls below -200 (normalized), a lime ⋏ symbol highlights potential buying opportunities.
Example: In bearish markets, VQI dropping below -200 has marked reversal points for profitable long entries.
Volatility Trend Tracking: The VQI plot and bands help traders visualize shifts in market momentum.
Example: A rising VQI crossing above zero with widening bands indicates strengthening bullish momentum, guiding traders to hold or enter long positions.
Dynamic Support/Resistance: Standard deviation bands act as dynamic volatility thresholds during price movements.
Example: Price reversals often occur near the third standard deviation bands, providing reliable entry/exit points during volatile periods.
🔶 SETTINGS
Customization Options:
VQI Length: Adjust the EMA period for VQI calculation (default: 14, range: 1–50).
Smoothing Length: Set the EMA period for smoothing (default: 5, range: 1–50).
Standard Deviation Multipliers: Customize multipliers for bands (defaults: 1.0, 2.0, 3.0).
Normalization: Toggle normalization to -100/+100 scale and adjust lookback period (default: 200, min: 50).
Display Style: Switch between line or histogram plot for VQI.
Candle Overlay: Enable/disable VQI-colored candles (lime for positive, red for negative).
The Alpha-Extract Volatility Quality Indicator empowers traders with a robust tool to navigate market volatility. By combining directional price range analysis with smoothed volatility metrics, it identifies overbought and oversold conditions, offering clear buy and sell signals. The customizable standard deviation bands and optional normalization provide precise context for market conditions, enabling traders to make informed decisions across various market cycles.
Volume Flow OscillatorVolume Flow Oscillator
Overview
The Volume Flow Oscillator is an advanced technical analysis tool that measures buying and selling pressure by combining price direction with volume. Unlike traditional volume indicators, this oscillator reveals the force behind price movements, helping traders identify strong trends, potential reversals, and divergences between price and volume.
Reading the Indicator
The oscillator displays seven colored bands that fluctuate around a zero line:
Three bands above zero (yellow) indicate increasing levels of buying pressure
Three bands below zero (red) indicate increasing levels of selling pressure
The central band represents the baseline volume flow
Color intensity changes based on whether values are positive or negative
Trading Signals
The Volume Flow Oscillator provides several valuable trading signals:
Zero-line crossovers: When multiple bands cross from negative to positive, potential bullish shift; opposite for bearish
Divergences: When price makes new highs/lows but oscillator bands fail to confirm, signals potential reversal
Volume climax: Extreme readings where outer bands stretch far from zero often precede reversals
Trend confirmation: Strong expansion of bands in direction of price movement confirms genuine momentum
Support/resistance: During trends, bands may remain largely on one side of zero, showing continued directional pressure
Customization
Adjust these key parameters to optimize the oscillator for your trading style:
Lookback Length: Controls overall sensitivity (shorter = more responsive, longer = smoother)
Multipliers: Adjust sensitivity spread between bands for different market conditions
ALMA Settings: Fine-tune how the indicator weights recent versus historical data
VWMA Toggle: Enable for additional smoothing in volatile markets
Best Practices
For optimal results, use this oscillator in conjunction with price action and other confirmation indicators. The multi-band approach helps distinguish between minor fluctuations and significant volume events that might signal important market turns.